﻿package com.eitb.factorias{
	import com.eitb.plantillas.*;
	public class FactoriaPlantillas implements IFactoria {
		public static  const PLANTILLA_1X2:String="Plantilla1x2";
		public static  const PLANTILLA_2X1:String="Plantilla2x1";
		public static  const PLANTILLA_3X2:String="Plantilla3x2";
		public static  const PLANTILLA_GALERIA:String="PlantillaGaleria";
		public static  const PLANTILLA_GALERIA_TEXTO:String="PlantillaGaleriaTexto";
		public static  const PLANTILLA_MAPA:String="PlantillaMapa";
		public static  const PLANTILLA_MAPA_TEXTOS:String="PlantillaMapaTextos";
		public static  const PLANTILLA_REPRODUCTOR:String="PlantillaReproductor";
		public static  const PLANTILLA_REPRODUCTOR_TEXTO:String="PlantillaReproductorTexto";
		public static  const PORTADA_1_BLANCA:String="Portada1Blanca";
		public static  const PORTADA_1_NEGRO:String="Portada1Negro";
		public static  const PORTADA_2:String="Portada2";

		public function FactoriaPlantillas():void {
		}
		public function getVistaElemento(tipo:String):* {
			var dPlantilla:*;
			switch (tipo) {
				case FactoriaPlantillas.PLANTILLA_1X2 :
					dPlantilla=new Plantilla1x2();
					break;
				case FactoriaPlantillas.PLANTILLA_2X1 :
					dPlantilla=new Plantilla2x1();
					break;
				case FactoriaPlantillas.PLANTILLA_3X2 :
					dPlantilla=new Plantilla3x2();
					break;
				case FactoriaPlantillas.PLANTILLA_GALERIA :
					dPlantilla=new PlantillaGaleria();
					break;
				case FactoriaPlantillas.PLANTILLA_GALERIA_TEXTO :
					dPlantilla=new PlantillaGaleriaTexto();
					break;
				case FactoriaPlantillas.PLANTILLA_MAPA :
					dPlantilla= new PlantillaMapa();
					break;
				case FactoriaPlantillas.PLANTILLA_MAPA_TEXTOS :
					dPlantilla= new PlantillaMapaTextos();
					break;
				case FactoriaPlantillas.PLANTILLA_REPRODUCTOR :
					dPlantilla=new PlantillaReproductor();
					break;
				case FactoriaPlantillas.PLANTILLA_REPRODUCTOR_TEXTO :
					dPlantilla=new PlantillaReproductorTexto();
					break;
				case FactoriaPlantillas.PORTADA_1_BLANCA :
					dPlantilla=new Portada1Blanca();
					break;
				case FactoriaPlantillas.PORTADA_1_NEGRO :
					dPlantilla=new Portada1Negro();
					break;
				case FactoriaPlantillas.PORTADA_2 :
					dPlantilla=new Portada2();
					break;
				default :
					dPlantilla= null;
			}
			return dPlantilla;
		}
		public function getControladorElemento(tipo:String):* {
			var mPlantilla:*;
			switch (tipo) {
				case FactoriaPlantillas.PLANTILLA_1X2 :
				case FactoriaPlantillas.PLANTILLA_2X1 :
				case FactoriaPlantillas.PLANTILLA_3X2 :
				case FactoriaPlantillas.PORTADA_1_BLANCA :
				case FactoriaPlantillas.PORTADA_1_NEGRO :
				case FactoriaPlantillas.PORTADA_2 :				
					mPlantilla = new ModeloPlantillaMultimedia();
					break;
				case FactoriaPlantillas.PLANTILLA_GALERIA_TEXTO :
					mPlantilla=new ModeloGaleria();
					mPlantilla.setCoord(157,83,543,343);
					break;
				case FactoriaPlantillas.PLANTILLA_GALERIA :
					mPlantilla=new ModeloGaleria();
					mPlantilla.setCoord(141,30,575,400);
					break;
				case FactoriaPlantillas.PLANTILLA_MAPA :
					mPlantilla=new ModeloMapa();
					break;
				case FactoriaPlantillas.PLANTILLA_MAPA_TEXTOS :
					mPlantilla=new ModeloMapaTextos();
					break;
				case FactoriaPlantillas.PLANTILLA_REPRODUCTOR_TEXTO :
				case FactoriaPlantillas.PLANTILLA_REPRODUCTOR :
					mPlantilla=new ModeloReproductor();
					break;
				default :
					mPlantilla= null;
			}
			return mPlantilla;
		}
	}
}